package cn.bdqn.mapper;

import cn.bdqn.domain.Client;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *客户接口
 * @author dkj
 */
public interface ClientMapper {

    /**
     * 根据id删除
     * @param id
     */
    void deleteByPrimaryKey(Integer id);

    /**
     * 新增
     * @param record
     */
    void insert(Client record);

    /**
     * 选择新增
     * @param record
     */
    void insertSelective(Client record);

    /**
     * 根据id查询
     * @param id
     * @return
     */
    Client selectByPrimaryKey(Integer id);

    /**
     * 选择更新
     * @param record
     */
    void updateByPrimaryKeySelective(Client record);

    /**
     * 更新
     * @param record
     */
    void updateByPrimaryKey(Client record);

    /**
     * 根据手机号查询
     * @param phone
     * @return
     */
    Client selectByClientPhone(String phone);

    /**
     * 根据手机号查询判断手机号是否存在
     * @param phone
     * @return
     */
    int selectByClientPhoneIsExist(String phone);

    /**
     * 查询全部信息
     * @return
     */
    List<Client> selectAllInfo();

    /**
     * 根据手机号 模糊查询 、姓名 模糊查询 分页
     * @param phone
     * @param name
     * @return
     */
    List<Client> selectInfoLikePhoneOrLikeName(@Param("phone") String phone,@Param("name") String name);

    /**
     * 逻辑删除客户信息
     * @param id
     */
    void updateState(Integer id);
}
